home *** CD-ROM | disk | FTP | other *** search
- ===============================================================================
- = This routine fixes a little problem I encountered using Opus's barricaded =
- = message areas. I have one local sysop who prefers to call my board and =
- = read SYSOP and MEADOW here, rather than receiving them himself. To =
- = accommodate him, I set up 2 new barricaded message areas, linked them to =
- = the SYSOP and MEADOW areas I use, and gave him the passwords. So far, so =
- = good. But when you try to renumber the messages, you have problems... if =
- = I renumber 40 and 41 (the real areas, set to Sysop priv), then his last =
- = message read counters (which say 97 and 98) don't get updated. If I renum =
- = 97 and 98, then a remote Sysop we have doesn't get his area 40 and 41 =
- = counters fixed. If I renumber them both, the second time you visit the same=
- = area RENUM happily proclaims that all messages are already in order. The =
- = solution? Change the barricaded message area numbers to match the real =
- = area numbers before running RENUM, so that everybody's counters get fixed, =
- = and then change that one user's area numbers back to 97 and 98 again =
- = afterwards. Even if you don't have this problem, this is a good example =
- = of having more than one program within the same command file. And of having=
- = more comments in a command file than you have commands. =
- ===============================================================================
-
- ifeq @name 'art walker' Keep looping until we hit the user we want
- set @var0 0
-
- Next1: Loop through all of his last message read area
- ifeq @mra@var0 97 numbers until we get the one we want, and then
- set @mra@var0 40 fix it.
- print 'Changed area 97 to area 40 for @name.'
- else
- add @var0 1 If this wasn't the right counter, try the
- ifle @var0 9 next one.
- goto Next1
- endif
- endif
-
- set @var0 0
-
- Next2:
- ifeq @mra@var0 98
- set @mra@var0 41
- print 'Changed area 98 to area 41 for @name.'
- else
- add @var0 1
- ifle @var0 9
- goto Next2
- endif
- endif
- end (stop after doing this... no need to loop through the remaining users)
- endif
- run
-
- dos "renum -s -n 0 150 40 -r 40 -n 0 150 41 -r 41" Run RENUM on the areas.
- end Loop not applicable,
- run so don't.
-
- ifeq @name 'art walker' Reset the updated message counters to the
- set @var0 0 correct area numbers.
-
- Next1:
- ifeq @mra@var0 40
- set @mra@var0 97
- print 'Changed area 40 to area 97 for @name.'
- else
- add @var0 1
- ifle @var0 9
- goto Next1
- endif
- endif
-
- set @var0 0
-
- Next2:
- ifeq @mra@var0 41
- set @mra@var0 98
- print 'Changed area 41 to area 98 for @name.'
- else
- add @var0 1
- ifle @var0 9
- goto Next2
- endif
- endif
- end
- endif
-